/************************************************************/
/***************************定义变量*************************/
/** ********************************************************* */
// jQueryEasyUI对象变量
var jQueryEasyUI;
var datagridJQueryFind = "#dataGrid";
var dataFormDiv = "#dataForm";
var baseRequestUrl = '/dashu-authority/application';
var formsubmitUrl;
var token=getQueryStr("DASHU_AUTH_TOKEN");
var auth=getQueryStr("auth");
$(function() {
	initDataGrid();
	$("#search").click(function() {
		var param = $.fn.getFormParams(searchFrom);
		$(datagridJQueryFind).datagrid('options').queryParams = param;
		$(datagridJQueryFind).datagrid('reload');
	});
	$("#clearBtn").click(function() {
		clearFrom(searchFrom);
	});
	$("#dlgDIV").hide();
	$.fn.datebox.defaults.formatter = function(date){
		var y = date.getFullYear();
		var m = date.getMonth()+1;
		var d = date.getDate();
		return m+'-'+d+'-'+y;
	}
	
	$("#status_id").combobox({  //任务运行时间
		 valueField: 'status',
		 textField: 'name',  
		 panelHeight : 'auto',   
		 required : false,   
		 editable : false,// 不可编辑，只能选择   
		 data :  [ {"name":"启用","status":"1"},{"name":"停用","status":"0"}],
		 onChange:function(o,n){ 
		  	    //$("#cronExpression").val(  $(this).combobox("getValue") );
		  	  //  $("#cronName").val(  $(this).combobox("getText") );
		  	  
		  	 } 
		 });

	
});

function initDataGrid() {
	$(datagridJQueryFind).datagrid({
		loadMsg:"数据加载中，请稍后……",
		url : baseRequestUrl+'/findAllByPaging.json?DASHU_AUTH_TOKEN='+token,
		toolbar : [{
			id :'button6',
			text : '添加',
			iconCls : 'icon-add',
			handler : function() {
				formsubmitUrl = baseRequestUrl+'/save.json?DASHU_AUTH_TOKEN='+token;
				setDialog("#dlgDIV", '','新增');
				clearFrom(dataFormDiv);
				$("#dlgDIV").show();
			}
		},'-',{
			id :'button7',
			text : '编辑',
			iconCls : 'icon-edit',
			handler : function() {
				var row = $(datagridJQueryFind).datagrid("getSelected");
				if (row) {
					setDialog("#dlgDIV",'','编辑');
					$("#dlgDIV").show();
					clearFrom(dataFormDiv);
					//加载数据
					$(dataFormDiv).form('load',row);
					
					
					formsubmitUrl = baseRequestUrl+'/update.json?DASHU_AUTH_TOKEN='+token;
				} else {
					$.messager.alert("操作提示", "请选择一行", "info");
				}
			}
		},'-',{
			id :'button8',
			text : '删除',
			iconCls : 'icon-cancel',
			handler : function() {
				var rows = $(datagridJQueryFind).datagrid("getSelections");
				if (rows.length == 0 ) {
					$.messager.alert("操作提示", "请至少选择一行", "info");
				} else {
					var ids = [];
					for (var i = 0; i < rows.length; i++) {
						ids.push(rows[i].id);
					}
					$.messager.confirm('确认','您确认想要删除记录吗？',function(r) {
						if (r) {
							$.ajax({
								type : "POST",
								dataType : 'html',
								url : baseRequestUrl+'/deleteByIds.json?DASHU_AUTH_TOKEN='+token+'&ids='+ids,
								success : function(data) {
									var obj = eval('('+ data+ ')');
									console.log(JSON.stringify(obj));
									if (obj.status == 1) {
										$.fn.messageInfoTip(data);
										$(datagridJQueryFind).datagrid('reload');
									}
								},
								error: function(textStatus){
									if(console){
										console.error("ajax出现异常："+textStatus);
									}
									alert(textStatus);
								}
							});
						}else{
							return false;
						}
					});
				}
		}},'-',{
			id :'button9',
			text : '批量启用',
			iconCls : 'icon-ok',
			handler : function() {
				var rows = $(datagridJQueryFind).datagrid("getSelections");
				if (rows.length == 0 ) {
					$.messager.alert("操作提示", "请至少选择一行", "info");
				} else {
					var ids = [];
					for (var i = 0; i < rows.length; i++) {
						ids.push(rows[i].id);
					}
					$.messager.confirm('确认','您确认想要批量启用吗？',function(r) {
						if (r) {
							$.ajax({
								type : "POST",
								dataType : 'html',
								url : baseRequestUrl+'/updateStatus.json?ids='+ids+'&status=1',
								success : function(data) {
									var obj = eval('('+ data+ ')');
									console.log(JSON.stringify(obj));
									if (obj.status == 1) {
										$.fn.messageInfoTip(data);
										$(datagridJQueryFind).datagrid('reload');
									}
								},
								error: function(textStatus){
									if(console){
										console.error("ajax出现异常："+textStatus);
									}
									alert(textStatus);
								}
							});
						}else{
							return false;
						}
					});
				}
		}},'-',{
			id :'button10',
			text : '批量停用',
			iconCls : 'icon-cancel',
			handler : function() {
				var rows = $(datagridJQueryFind).datagrid("getSelections");
				if (rows.length == 0 ) {
					$.messager.alert("操作提示", "请至少选择一行", "info");
				} else {
					var ids = [];
					for (var i = 0; i < rows.length; i++) {
						ids.push(rows[i].id);
					}
					$.messager.confirm('确认','您确认想要批量停用吗？',function(r) {
						if (r) {
							$.ajax({
								type : "POST",
								dataType : 'html',
								url : baseRequestUrl+'/updateStatus.json?ids='+ids+'&status=0',
								success : function(data) {
									var obj = eval('('+ data+ ')');
									console.log(JSON.stringify(obj));
									if (obj.status == 1) {
										$.fn.messageInfoTip(data);
										$(datagridJQueryFind).datagrid('reload');
									}
								},
								error: function(textStatus){
									if(console){
										console.error("ajax出现异常："+textStatus);
									}
									alert(textStatus);
								}
							});
						}else{
							return false;
						}
					});
				}
		}}],
		width : '80%',
		pagination : true,
		pageSize : 10,
		singleSelect : false,
		striped : true,
		sortOrder : 'asc',
		rownumbers : true,
		loadFilter:function(data){
			return data.data;
		},
		onLoadSuccess : function() {
			$(datagridJQueryFind).datagrid('clearSelections');
			for(var i=6;i<=32;i++){
				if (!checkProduct(auth,i)) {
					var buttonId ="#button"+i;
					if ($(buttonId)) {
						$(buttonId).hide();
					}
					
				}
			}
		},
		onLoadError : function() {
		},
		columns : [ [ 
		       {	field : 'id',
					title : 'ID',
					width : 65,
					align : 'center',
					hidden : true,
					sortable : true
				}, /*{
					field : 'deviceId',
					title : '设备ID',
					width : 90,
					align : 'center',
					sortable : true
				},*/{
					field : 'applicationName',
					title : '系统名称',
					width : 90,
					align : 'center',
					sortable : true
				},{
					field : 'status',
					title : '状态',
					width : 90,
					align : 'center',
					formatter:function(value,row,index){
						if("1"==value){
							return "启用"; 
						}
						return "停用";
					},
					sortable : true
				},{
					field : 'createTime',
					title : '创建时间 ',
					width : 180,
					align : 'center',
					sortable : true
				}, {
					field : 'updateTime',
					title : '更新时间 ',
					width : 180,
					align : 'center',
					sortable : true
				}
		         ] ]
	});
}


function clearFrom(cform){
	$(cform).form("clear");
}

function submitForm() {
	$('#dataForm').form('submit', {
		url : formsubmitUrl,
		ajax : true,
		onSubmit:function(){
			return $(this).form('validate');
		},
		success : function(data) {
			var obj = eval('(' + data + ')');
			var status = obj.status;
			console.log(JSON.stringify(obj));
			if (status == 1) {
				$.fn.messageInfoTip(data);
				$('#dlgDIV').dialog('close');
				$(datagridJQueryFind).datagrid('reload');
			}else {
				$.fn.messageInfoTip(data);
//				$('#dlgDIV').dialog('close');
			}
		}
	});
}
//加载下拉框数据
function setComboboxData(id,url){
	$.ajax({
		type:"POST",
		dataType:'html',
		url:url,
		success:function(data){
			var obj = eval('('+ data+ ')');
			if (obj.status == 1) {
				$(id).combobox("loadData",obj.data);
			}
		},
		error:function(textStatus){
			if(console){
				console.error("ajax出现异常:"+textStatus);
			}
			alert(textStatus);
		}
	});
}
function setDialog(dialogDiv, hrefHtml, title) {
	$(dialogDiv).show();
	$(dialogDiv).dialog({
		title : title,
		width : 600,
		height : 400,
		closed : false,
		cache : false,
		modal : true,
		buttons : [ {
			text : '保存',
			iconCls : 'icon-ok',
			handler : function() {
				submitForm();
			}
		}, {
			text : '重置',
			iconCls : 'icon-clear',
			handler : function() {
				clearFrom(dataFormDiv);
			}
		}, {
			text : '关闭',
			iconCls : 'icon-remove',
			handler : function() {
				$(dialogDiv).dialog('close');
			}
		} ]
	});
}
